1. Field of the Invention
The present invention relates to processing of a data file, and, more specifically, to processing of an XML document such as a SOAP message used in Web Services.
2. Description of the Related Art
As a computer network such as Internet has prevailed, various services have been provided via a network. Recently, Web Services have been increasingly popular as a new framework for communication between computers. Web Services refer to a system for services to dynamically exchange data, without a human operation, according to various protocols such as HTTP (HyperText Transfer Protocol), which serves as a foundation of WWW (World Wide Web). Information is exchanged between services by using a SOAP (Simple Object Access Protocol) message. Prevailing of Web Services enables a client to automatically acquire various pieces of information.
It is important to provide security to prevent tampering of a message or impersonation in implementing a Web service. Recently, a specification of Web Services Security for applying a security technique such as encryption or a signature on a SOAP message has been proposed (for example, see Non-Patent Document 1).
There are a wide variety of terminal devices connecting to a network, ranging from a computer with a high processing capability such as a personal computer or a workstation to a terminal device with limited storage of memory or a limited processing capability to put higher priority on portability and downsizing, such as a portable telephone or a PDA (Personal Digital Assistants).
Portable telephones of these days have an environment for viewing a Web page through HTTP-based communication or an environment where a program of Java® (trademark of U.S. Sun Microsystems) or C is activated to execute an application for a game or the like. With these environments, a Web service that uses a portable telephone as a client can be implemented. For implementing the services, it is desirable to provide a portable telephone with functionality of composing and sending a SOAP message with Web Services Security by passing a function or an argument from an application and functionality of receiving and breaking a SOAP message with Web Services Security and passing the return value to the application. If a processing speed or runtime memory consumption is limited such as in a portable telephone, the functionality has to be implemented with processing as little as possible.
The main technique in Web Services is respective processes of composing a SOAP message before sending it and deciphering a SOAP message after receiving it.
These processes for a SOAP message are generally performed by creating DOM (Document Object Model) on memory. In this manner, processes can be performed through a tree structure without considering the described order in a message. Thus, this can be generally taken as a general processing manner. However, they have problems in creating and operating DOM, in that
1) they need too much memory consumption, and
2) too much time for processing.
In the case that a Web service is performed with portable telephones as clients, problems in the above-mentioned manner by using DOM becomes more serious, because a processing speed or runtime memory consumption is limited in a portable telephone.
One of solutions for the problems is to perform composing and breaking of a SOAP message in a streaming process. In order to provide the solution, for a document file including a header part and a body part, with a processing procedure and process information being) defined in the header part from which a processing object is referred to with ID, a technique is required that processing of a message in the body part according to a description in the header part is performed in a streaming process.